package string;

import java.util.Arrays;

/**
 * 重载split方法
 *
 * String[] split(String regex, int limit)
 * limit用于指定: 限定拆分项个数
 */
public class SplitDemo2 {
    public static void main(String[] args) {
        String line = "a=b=c=d=e=f===";

        String[] array = line.split("=");
        System.out.println(Arrays.toString(array));

        array = line.split("=",2);//仅拆分出2项
        System.out.println(Arrays.toString(array));//[a, b=c=d=e=f===]

        array = line.split("=",3);//仅拆分出3项
        System.out.println(Arrays.toString(array));//[a, b, c=d=e=f===]
        /*
        如果最多可拆分项不足限定拆分项, 那么数组为最多可拆分项(甚至包含了最后连续的空字符串)
         */
        array = line.split("=",10);//仅拆分出10项
        System.out.println(Arrays.toString(array));//[a, b, c, d, e, f, , , ]
        /*
        limit = 0时, 与split(String regex)效果一致
         */
        array = line.split("=",0);
        System.out.println(Arrays.toString(array));//[a, b, c, d, e, f]
        /*
        limit < 0时, 表示应拆尽拆(能拆多少拆多少)
         */
        array = line.split("=",-1);
        System.out.println(Arrays.toString(array));//[a, b, c, d, e, f, , , ]
    }
}
